package com.lvy.hczn.front.system.domain.business;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.lvy.hczn.front.common.core.domain.BaseModel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.math.BigDecimal;
import java.util.List;

@Data
@TableName("warehouse")
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "仓库")
public class Warehouse extends BaseModel<Warehouse> {

    @ApiModelProperty(value = "前置仓关联的总仓")
    private String parentCode;

    @ApiModelProperty(value = "仓库名称")
    private String warehouseName;

    @ApiModelProperty(value = "仓库编码")
    private String warehouseCode;

    @ApiModelProperty(value = "省")
    private String provinceId;

    @ApiModelProperty(value = "市")
    private String cityId;

    @ApiModelProperty(value = "区")
    private String areaId;

    @ApiModelProperty(value = "仓库详细地址")
    private String address;

    @ApiModelProperty(value = "经度")
    private BigDecimal longitude;

    @ApiModelProperty(value = "纬度")
    private BigDecimal latitude;

    @ApiModelProperty(value = "联系人")
    private String name;

    @ApiModelProperty(value = "联系电话")
    private String phone;

    @ApiModelProperty(value = "0：启用，1：停用")
    private String status;

    @ApiModelProperty(value = "（0、总仓；1、前置仓）")
    private String type;

    @ApiModelProperty(value = "仓数（wcs一整个行列为一个仓）")
    private Integer quantity;

    @ApiModelProperty(value = "列数")
    private Integer columnQuantity;

    @ApiModelProperty(value = "行数")
    private Integer rowQuantity;

    @ApiModelProperty(value = "所属运营区域编码")
    private String areaCode;

    @ApiModelProperty(value = "所属运营区域的主题")
    private String topicInfo;

    @ApiModelProperty(value = "仓库总库位数")
    private BigDecimal totalStorageCount;

    @ApiModelProperty(value = "是否自动化仓库，0：否（无自动化货架）；1：是（包含地平仓）")
    private Integer automation;

    @ApiModelProperty(value = "地址扩展ID")
    @TableField(exist = false)
    private String areaExtId;

    @TableField(exist = false)
    private List<TemperatureZone> list;
}
